//引入腾讯位置服务的核心SDK
var QQMap = require("../../utils/qqmap-wx-jssdk.min.js")
//声明全局的一个SDK对象
var map;

var mapContext

Page({

  /**
   * 页面的初始数据
   */
  data: {
    lng: 0, //经度
    lat: 0, //纬度
    list: [] //空的标记点数组
  },

  goTo(e) {
    var id = e.detail.markerId
    this.data.list.forEach(item => { //遍历得到所有的标记点信息
      if (id == item.id) {
        mapContext.openMapApp({
          longitude:item.longitude,
          latitude:item.latitude,
          destination:item.title,
          success:res=>{
          },
          fail:res=>{
            console.log(res);
          }
        })
        // wx.openLocation({
        //   latitude: item.latitude,
        //   longitude: item.longitude,
        //   name: item.title,
        //   address: item.address
        // })

      }
    });
  },

  /*
   * 输入框失去焦点事件
   */
  blur(e) {
   
    var val = e.detail.value //获取输入框的值
    map = new QQMap({ //实例化位置对象
      key: "TZWBZ-X3G3C-6V625-AWEGV-AZVYJ-F3FHW" //传入自己申请的密钥
    })
    map.search({ //调用搜索的方法
      keyword: val, //传入输入框的值
      success: res => {
        this.setData({
          list: res.data.map((item, index) => {
            return Object.assign({}, {
              id: index,
              longitude: item.location.lng,
              latitude: item.location.lat,
              iconPath: "/images/定位.png",
              width: 30,
              height: 30,
              title:item.title,
              address:item.address
            })
          })
        })
      },
      fail: res => {
        console.log(res);
      }
    })
    mapContext.includePoints({
      points:this.data.list,
      padding:[50,50,50,50],
      success:res=>{
        console.log(res);
      },
      fail:res=>{
        console.log(res);
      }
    })
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    mapContext = wx.createMapContext('myMap')
    wx.getLocation({ //调用官方API获取地理位置
      type: "gcj02", //位置坐标类型为gcj02
      success: res => {
        this.setData({
          lat: res.latitude, //具体的纬度信息存起来
          lng: res.longitude //具体的经度信息存起来
        })
      }
    })
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})